#pragma once
#include <tcl.h>
#include <tk.h>


struct renderEvent {
	struct Tcl_Event tclEvent;
	Tcl_Interp*  tcl;
	unsigned char* data;
	int count;
	
	int* avgRender;
	int* avgIndex;
};

struct alertEvent {
	struct Tcl_Event tclEvent;
	Tcl_Interp*  tcl;
	char* msg;
};


struct instance {
	Tcl_Interp*  tcl;
	Tcl_ThreadId tclThread;
	
	struct sockaddr_in serverAddress;
	int netClientSocket;
	pthread_t netThread;
	
	int avgRender[10];
	int avgIndex;
};



static const char* const fieldPixelsIds[] = {
"fld0",   "fld1",   "fld2",   "fld3",   "fld4",   "fld5",   "fld6",   "fld7", 
"fld8",   "fld9",   "fld10",  "fld11",  "fld12",  "fld13",  "fld14",  "fld15",
"fld16",  "fld17",  "fld18",  "fld19",  "fld20",  "fld21",  "fld22",  "fld23",
"fld24",  "fld25",  "fld26",  "fld27",  "fld28",  "fld29",  "fld30",  "fld31",
"fld32",  "fld33",  "fld34",  "fld35",  "fld36",  "fld37",  "fld38",  "fld39",
"fld40",  "fld41",  "fld42",  "fld43",  "fld44",  "fld45",  "fld46",  "fld47",
"fld48",  "fld49",  "fld50",  "fld51",  "fld52",  "fld53",  "fld54",  "fld55",
"fld56",  "fld57",  "fld58",  "fld59",  "fld60",  "fld61",  "fld62",  "fld63",
"fld64",  "fld65",  "fld66",  "fld67",  "fld68",  "fld69",  "fld70",  "fld71",
"fld72",  "fld73",  "fld74",  "fld75",  "fld76",  "fld77",  "fld78",  "fld79",
"fld80",  "fld81",  "fld82",  "fld83",  "fld84",  "fld85",  "fld86",  "fld87",
"fld88",  "fld89",  "fld90",  "fld91",  "fld92",  "fld93",  "fld94",  "fld95",
"fld96",  "fld97",  "fld98",  "fld99",  "fld100", "fld101", "fld102", "fld103",
"fld104", "fld105", "fld106", "fld107", "fld108", "fld109", "fld110", "fld111",
"fld112", "fld113", "fld114", "fld115", "fld116", "fld117", "fld118", "fld119",
"fld120", "fld121", "fld122", "fld123", "fld124", "fld125", "fld126", "fld127",
"fld128", "fld129", "fld130", "fld131", "fld132", "fld133", "fld134", "fld135",
"fld136", "fld137", "fld138", "fld139", "fld140", "fld141", "fld142", "fld143",
"fld144", "fld145", "fld146", "fld147", "fld148", "fld149", "fld150", "fld151",
"fld152", "fld153", "fld154", "fld155", "fld156", "fld157", "fld158", "fld159",
"fld160", "fld161", "fld162", "fld163", "fld164", "fld165", "fld166", "fld167",
"fld168", "fld169", "fld170", "fld171", "fld172", "fld173", "fld174", "fld175",
"fld176", "fld177", "fld178", "fld179", "fld180", "fld181", "fld182", "fld183",
"fld184", "fld185", "fld186", "fld187", "fld188", "fld189", "fld190", "fld191",
"fld192", "fld193", "fld194", "fld195", "fld196", "fld197", "fld198", "fld199" };
